Presently, database modeling is done with an “offline” model in some form of repository or on a file system. This means that all database modeling is usually done in a two-step process by 1) capturing an existing model into offline form, and then 2) editing the model to reconciling the two models. This is imprecise and error prone, and this process requires additional unneeded steps (e.g., reconciliation). Most database modeling tools are used to 1) create an offline model “from scratch” or by capture/import from an online database, 2) edit the offline model, or 3) reconcile the online database with the offline model. This could involve updating the offline model to reflect changes in the online database, updating the online database to reflect changes in the offline model, or both. Updating the online database involves generation of SQL DDL commands, either executed directly against the online database or saved to a file for later execution. There are many shortcomings with these processes. Hence, improvements in the art are needed.